diff --git a/xarray/backends/plugins.py b/xarray/backends/plugins.py
index f9790cfa..8d2e96b7 100644
--- a/xarray/backends/plugins.py
+++ b/xarray/backends/plugins.py
@@ -114,6 +114,8 @@ def guess_engine(store_spec):
 
 def get_backend(engine):
     """Select open_dataset method based on current engine"""
+    if callable(engine):
+        return engine
     engines = list_engines()
     if engine not in engines:
         raise ValueError(
